package com.knowledge.business.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.knowledge.common.annotation.Excel;
import com.knowledge.common.core.domain.BaseEntity;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 锦囊管理对象 sys_role
 *
 * @author zhaoyk
 * @date 2025-09-15
 */
@Data
@TableName(value = "sys_role")
@EqualsAndHashCode(callSuper = true)
public class JnSysRole extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String roleId;
    /**
     * "名称"
     */
    @Excel(name = "名称")
    @NotBlank(message = "名称不能为空")
    @Size(min = 0, max = 50, message = "名称长度不能超过50个字符")
    private String roleName;
    /**
     * "提示词"
     */
    @Excel(name = "提示词")
    private String roleDesc;
    /**
     * "概述(后加)"
     */
    @Excel(name = "概述(后加)")
    private String info;
    /**
     * "音量(后加)"
     */
    @Excel(name = "音量(后加)")
    private String volume;
    /**
     * "语速(后加)"
     */
    @Excel(name = "语速(后加)")
    private String speech;
    /**
     * "表情符号：1-启用，0-禁用"
     */
    @Excel(name = "表情符号(后加)")
    private String emoji;
    /**
     * "图片(后加)"
     */
    @Excel(name = "图片(后加)")
    private String image;
    /**
     * "视频(后加)"
     */
    @Excel(name = "视频(后加)")
    private String video;
    /**
     * "滚动词(后加)"
     */
    @Excel(name = "滚动词(后加)")
    private String rollingWords;
    /**
     * "欢迎词(后加)"
     */
    @Excel(name = "欢迎词(后加)")
    private String welcomeWords;
    /**
     * "数据集(后加)多个用逗号隔开"
     */
    @Excel(name = "数据集(后加)")
    private String documentType;
    /**
     * "角色头像"
     */
    @Excel(name = "角色头像")
    private String avatar;
    /**
     * "TTS服务ID"
     */
    @Excel(name = "TTS服务ID")
    private String ttsId;
    /**
     * "模型ID"
     */
    @Excel(name = "模型ID")
    private String modelId;
    /**
     * "STT服务ID"
     */
    @Excel(name = "STT服务ID")
    private String sttId;
    /**
     * "语音检测阈值"
     */
    @Excel(name = "语音检测阈值")
    private Long vadSpeechTh;
    /**
     * "静音检测阈值"
     */
    @Excel(name = "静音检测阈值")
    private Long vadSilenceTh;
    /**
     * "能量检测阈值"
     */
    @Excel(name = "能量检测阈值")
    private Long vadEnergyTh;
    /**
     * "静音检测时间"
     */
    @Excel(name = "静音检测时间")
    private Long vadSilenceMs;
    /**
     * "角色语音名称--字典（voice_type）"
     */
    @Excel(name = "角色语音名称")
    private String voiceName;
    /**
     * "状态：1-启用，0-禁用"
     */
    @Excel(name = "状态：1-启用，0-禁用")
    private String state;
    /**
     * "是否默认角色：1-是，0-否"
     */
    @Excel(name = "是否默认角色：1-是，0-否")
    private String isDefault;
    /**
     * "创建人"
     */
    @Excel(name = "创建人")
    private Long userId;

    /**
     * 1锦囊  2 在线渠道 (后加)
     */
    private String type;

    /**
     * 商家二维码 --在线渠道(后加)
     */
    private String qrCode;


    /**
     * 在线渠道背景图(后加)
     */
    private String bjImage;


    /**
     * 在线渠道锦囊人物(后加)
     */
    private String rwname;


    @Excel(name = "模型名称")
    @TableField(exist = false)
    private String modelName;


    /**
     * 数据集名称
     */
    @TableField(exist = false)
    private String documentTypeName;
    /**
     * nickName
     */
    @TableField(exist = false)
    private String nickName;





}
